Knorr Algorithm